package com.lwbldy.modules.system.service;


import com.lwbldy.modules.system.domain.SysRole;
import com.lwbldy.modules.system.vo.MenuVO;

import java.util.List;

public interface SysRoleService {

    /**
     * 查询所有
     * @return
     */
    List<SysRole> listAll();

    /**
     * 根据用户id查询权限
     * @param userId
     * @return
     */
    List<Long>  queryRoleIdList(Long userId);

    /**
     * 根据Id查询角色
     * @param id
     * @return
     */
    SysRole queryById(long id);


    /**
     * 保存角色
     * @param sysRole
     * @return
     */
    int save(SysRole sysRole);

    /**
     * 更新角色
     * @param sysRole
     * @return
     */
    int update(SysRole sysRole);


    /**
     * 根据id删除目录
     * @param roleId
     * @return
     */
    int remove(Long roleId);

    /**
     * Describe: 根据 id 删除角色数据
     * Param: ids
     * Return: 操作结果
     * */
    int removeBatch(Long[] ids);

    /**
     * 保存角色权限
     * @param roleId
     * @param menuIds
     * @return
     */
    int saveRolePower(Long roleId,List<Long> menuIds);



}
